

package com.hazelcast.client.impl.spi;

import com.hazelcast.client.impl.clientside.HazelcastClientInstanceImpl;
import com.hazelcast.client.impl.connection.ClientConnection;
import com.hazelcast.transaction.TransactionContext;
import com.hazelcast.transaction.TransactionalMap;

/**
 * Provides a context to perform transactional operations: beginning/committing transactions, but also retrieving
 * transactional data-structures like the {@link TransactionalMap}.
 * <p>
 * Provides client instance and client connection proxies that need to be accessed for sending invocations.
 */
public interface ClientTransactionContext extends TransactionContext {

    HazelcastClientInstanceImpl getClient();

    ClientConnection getConnection();
}
